package br.com.equus.bean;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import org.primefaces.component.menuitem.MenuItem;
import org.primefaces.component.submenu.Submenu;
import org.primefaces.model.DefaultMenuModel;
import org.primefaces.model.MenuModel;

@ManagedBean(name = "menuBean")
@SessionScoped
public class MenuBean {

	private MenuModel cadastro;
	private MenuModel apoio;
	private MenuModel atividades;
	private MenuModel acesso;
	private MenuModel sistema;

	public MenuModel getCadastro() {
		cadastro = new DefaultMenuModel();

		// Principal
		// --------------------------------------------------------------------------------------------------------------------------------------------
		Submenu submenu = new Submenu();
		submenu.setLabel("Principal");

		MenuItem item = new MenuItem();
		item = new MenuItem();
		item.setId("menuHome");
		item.setValue("Agenda");
		item.setUrl("/pages/principal.jsf");
		cadastro.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Pesquisar Animal");
		item.setUrl("/pages/pesquisarAnimal.jsf");
		cadastro.addMenuItem(item);
		item = new MenuItem();
		item.setValue("Cadastrar Animal");
		item.setUrl("/pages/animal.jsf");
		cadastro.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Proprietário");
		item.setUrl("/pages/proprietario.jsf");
		cadastro.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Usuário");
		item.setUrl("/pages/usuario.jsf");
		cadastro.addMenuItem(item);

		submenu.getChildren().add(item);

		return cadastro;
	}

	public void setCadastro(MenuModel principal) {
		this.cadastro = principal;
	}

	public MenuModel getApoio() {
		apoio = new DefaultMenuModel();
		// Cadastros
		// --------------------------------------------------------------------------------------------------------------------------------------------
		Submenu submenu = new Submenu();
		submenu.setLabel("Cadastro");
		MenuItem item = new MenuItem();

		item = new MenuItem();
		item.setValue("Categoria");
		item.setUrl("/pages/categoria.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Grau do Sangue");
		item.setUrl("/pages/grauSangue.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Item de Tratamento");
		item.setUrl("/pages/itemTratamento.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Item de Vacina");
		item.setUrl("/pages/itemVacina.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Parte de Medição");
		item.setUrl("/pages/parteMedicao.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Pelagem");
		item.setUrl("/pages/pelagem.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Marca");
		item.setUrl("/pages/marca.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Raça");
		item.setUrl("/pages/raca.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Tipo de Cobertura");
		item.setUrl("/pages/tipoCobertura.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Tipo de Dosagem");
		item.setUrl("/pages/tipoDosagem.jsf");
		apoio.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Tipo de Medida");
		item.setUrl("/pages/tipoMedida.jsf");
		apoio.addMenuItem(item);

		item.setValue("Tipo de Tarefa");
		item.setUrl("/pages/tipoTarefa.jsf");
		apoio.addMenuItem(item);

		return apoio;
	}

	public void setApoio(MenuModel cadastros) {
		this.apoio = cadastros;
	}

	public MenuModel getSistema() {

		sistema = new DefaultMenuModel();
		// Administracao do Sistema
		// --------------------------------------------------------------------------------------------------------------------------------------------
		Submenu submenu = new Submenu();
		submenu.setLabel("Administração do Sistema");

		MenuItem item = new MenuItem();
		item.setValue("Sair");
		item.setUrl("/sair.jsf");
		sistema.addMenuItem(item);

		return sistema;
	}

	public void setSistema(MenuModel sistema) {
		this.sistema = sistema;
	}

	public MenuModel getAcesso() {
		acesso = new DefaultMenuModel();
		Submenu submenu = new Submenu();
		submenu.setLabel("Acesso");
		MenuItem item = new MenuItem();

		item = new MenuItem();
		item.setValue("Perfil");
		item.setUrl("/pages/perfil.jsf");
		acesso.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Funcionalidade");
		item.setUrl("/pages/funcionalidade.jsf");
		acesso.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Perfil Funcionalidade");
		item.setUrl("/pages/perfilFuncionalidade.jsf");
		acesso.addMenuItem(item);

		return acesso;
	}

	public void setAcesso(MenuModel acesso) {
		this.acesso = acesso;
	}

	public MenuModel getAtividades() {

		atividades = new DefaultMenuModel();

		// Principal
		// --------------------------------------------------------------------------------------------------------------------------------------------
		Submenu submenu = new Submenu();
		submenu.setLabel("Atividade");

		MenuItem item = new MenuItem();

		item = new MenuItem();
		item.setValue("Manejo");
		item.setUrl("/pages/manejo.jsf");
		atividades.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Produto");
		item.setUrl("/pages/produto.jsf");
		atividades.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Fornecedor");
		item.setUrl("/pages/fornecedor.jsf");
		atividades.addMenuItem(item);

		item = new MenuItem();
		item.setValue("Entrada");
		item.setUrl("/pages/entrada.jsf");
		atividades.addMenuItem(item);

		submenu.getChildren().add(item);

		return atividades;
	}

	public void setAtividades(MenuModel atividades) {
		this.atividades = atividades;
	}

}
